package cn.edu.ren.service;

import cn.edu.ren.entity.Item;
import org.springframework.data.domain.Pageable;
import org.springframework.data.domain.Sort;

import java.util.List;

/**
 * @PackageName: cn.edu.ren.service
 * @ClassName: ItemService
 * @Description:
 * @author: RZS
 * @date: 2021/7/8  0:06
 */
public interface ItemService {

    // 排序
    List<Item> searchAndSort();

    // rangeQuery   范围匹配
    List<Item> rangeQuery();

    // booleanQuery  布尔查询查询
    List<Item> booleanQuery();

    // fuzzyQuery  通配符匹配
    List<Item> fuzzyQuery();

    // 词条匹配，不分词
    List<Item> termQuery();

    // match query:词条匹配，先分词然后在调用termQuery进行匹配
    List<Item> matchQuery();

    // 查询结果排序
    List<Item> findAll(Sort sort);

    // 分页查询
    List<Item> findAll(Pageable pageable);

    // 保存数据
    void save(Item item);

    // 批量添加数据
    void batchSave(List<Item> itemList);

    // 查询所有
    List<Item> findAll();

    // 根据一个id进行查询
    Item findById(Long id);

    // 根据多个id查询多个数据
    List<Item> findByIds(List<Long> ids);
}
